package(default_visibility = ["//tools/build_defs:internal_pkg"])

licenses(["notice"])

objc_library(
    name = "errors",
    srcs = ["TINKErrors.mm"],
    hdrs = ["TINKErrors.h"],
    deps = [
        "//cc/util:status",
    ],
)

objc_library(
    name = "strings",
    srcs = ["TINKStrings.mm"],
    hdrs = ["TINKStrings.h"],
    deps = [
        ":errors",
        "//cc/util:status",
        "@com_google_absl//absl/strings",
    ],
)

objc_library(
    name = "test_helpers",
    testonly = 1,
    srcs = ["TINKTestHelpers.mm"],
    hdrs = ["TINKTestHelpers.h"],
    deps = [
        ":errors",
        ":strings",
        "//cc/subtle:subtle_util_boringssl",
        "//proto:all_objc_proto",
        "@com_google_absl//absl/strings",
        "@com_google_protobuf//:objectivec",
    ],
)

objc_library(
    name = "proto_helpers",
    testonly = 1,
    srcs = ["TINKProtoHelpers.mm"],
    hdrs = ["TINKProtoHelpers.h"],
    deps = [
        ":errors",
        ":strings",
        ":tink_cc_pb",
        "//cc/util:status",
        "//proto:all_objc_proto",
        "@com_google_absl//absl/strings",
    ],
)

cc_library(
    name = "tink_cc_pb",
    deps = [
        "//proto:tink_cc_proto",
    ],
)
